home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 15
/
Aminet 15 - Nov 1996.iso
/
Aminet
/
dev
/
basic
/
ace24dist.lha
/
ace24.lha
/
include
/
dos
/
doshunks.h
< prev
next >
Wrap
C/C++ Source or Header
|
1996-09-10
|
3KB
|
99 lines
#ifndef DOS_DOSHUNKS_H
#define DOS_DOSHUNKS_H 1
/*
** doshunks.h for ACE Basic
**
** Note: Translated to ACE by ConvertC2ACE
** @ MapMeadow Software, Nils Sjoholm
**
**
** Date: 09/02/95
**
**
*/
/* hunk types */
#define HUNK_UNIT 999
#define HUNK_NAME 1000
#define HUNK_CODE 1001
#define HUNK_DATA 1002
#define HUNK_BSS 1003
#define HUNK_RELOC32 1004
#define HUNK_ABSRELOC32 HUNK_RELOC32
#define HUNK_RELOC16 1005
#define HUNK_RELRELOC16 HUNK_RELOC16
#define HUNK_RELOC8 1006
#define HUNK_RELRELOC8 HUNK_RELOC8
#define HUNK_EXT 1007
#define HUNK_SYMBOL 1008
#define HUNK_DEBUG 1009
#define HUNK_END 1010
#define HUNK_HEADER 1011
#define HUNK_OVERLAY 1013
#define HUNK_BREAK 1014
#define HUNK_DREL32 1015
#define HUNK_DREL16 1016
#define HUNK_DREL8 1017
#define HUNK_LIB 1018
#define HUNK_INDEX 1019
/*
* Note: V37 LoadSeg uses 1015 (HUNK_DREL32) by mistake. This will continue
* to be supported in future versions, since HUNK_DREL32 is illegal in load files
* anyways. Future versions will support both 1015 and 1020, though anything
* that should be usable under V37 should use 1015.
*/
#define HUNK_RELOC32SHORT 1020
/* see ext_xxx below. New for V39 (note that LoadSeg only handles RELRELOC32).*/
#define HUNK_RELRELOC32 1021
#define HUNK_ABSRELOC16 1022
/*
* Any hunks that have the HUNKB_ADVISORY bit set will be ignored if they
* aren't understood. When ignored, they're treated like HUNK_DEBUG hunks.
* NOTE: this handling of HUNKB_ADVISORY started as of V39 dos.library! If
* lading such executables is attempted under <V39 dos, it will fail with a
* bad hunk type.
*/
#define HUNKB_ADVISORY 29
#define HUNKB_CHIP 30
#define HUNKB_FAST 31
#define HUNKF_ADVISORY (536870912&)
#define HUNKF_CHIP (1073741824&)
#define HUNKF_FAST (2147483648&)
/* hunk_ext sub-types */
#define EXT_SYMB 0 /* symbol table */
#define EXT_DEF 1 /* relocatable definition */
#define EXT_ABS 2 /* Absolute definition */
#define EXT_RES 3 /* no longer supported */
#define EXT_REF32 129 /* 32 bit absolute reference to symbol */
#define EXT_ABSREF32 EXT_REF32
#define EXT_COMMON 130 /* 32 bit absolute reference to COMMON block */
#define EXT_ABSCOMMON EXT_COMMON
#define EXT_REF16 131 /* 16 bit PC-relative reference to symbol */
#define EXT_RELREF16 EXT_REF16
#define EXT_REF8 132 /* 8 bit PC-relative reference to symbol */
#define EXT_RELREF8 EXT_REF8
#define EXT_DEXT32 133 /* 32 bit data relative reference */
#define EXT_DEXT16 134 /* 16 bit data relative reference */
#define EXT_DEXT8 135 /* 8 bit data relative reference */
/* These are to support some of the '020 and up modes that are rarely used */
#define EXT_RELREF32 136 /* 32 bit PC-relative reference to symbol */
#define EXT_RELCOMMON 137 /* 32 bit PC-relative reference to COMMON block */
/* for completeness... All 68&H0's support this */
#define EXT_ABSREF16 138 /* 16 bit absolute reference to symbol */
/* this only exists on '020's and above, in the (d8, An, Xn) address mode */
#define EXT_ABSREF8 139 /* 8 bit absolute reference to symbol */
#endif /* DOS_DOSHUNKS_H */